package com.shujia.day18;

import java.sql.*;
import java.util.Scanner;

public class Code07OtherStatement  {
    public static void main(String[] args) throws SQLException, ClassNotFoundException{
        Class.forName("com.mysql.jdbc.Driver");
        Connection connection = DriverManager.getConnection("jdbc:mysql://192.168.163.100:3306/stu?useSSL=false&useUnicode=true&characterSet=utf8", "root", "123456");

        String userName = "";
        String passWD = "";
        Scanner scanner = new Scanner(System.in);
        System.out.println("欢迎登录XXX相亲平台");
        System.out.println("有缘人请输入用户名：");

        if (scanner.hasNext()){
            userName = scanner.nextLine();
        }
        System.out.println("请输入密码：");
        if (scanner.hasNext()){
            passWD = scanner.next();
        }

//        user_name='老邢' or '1=1' SQL注入

        // 4.对SQL进行执行
        String sql = "select * from user_tb where user_name= ? and passwd = ?";  // 加上单引号 否则认为是一个数值


        /*
            prepareStatement在创建时需要给定一个SQL语句，并且SQL语句中如果待输入的数据，可以用？替代
         */

        PreparedStatement preparedStatement = connection.prepareStatement(sql);
        preparedStatement.setString(1,userName); // 对？填充userName值  1表示第1个？
//        preparedStatement.setString(2,passWD); // 对？填充userName值  1表示第1个？

        ResultSet resultSet = preparedStatement.executeQuery();


        // 5.如果有数据返回，那么需要对数据进行做迭代

        if (!resultSet.next()) {
            System.out.println("您输入的用户不存在，请加入相亲一家人..");
        }else{
            String queryPasswd = resultSet.getString("passwd");
            if (queryPasswd.equals(passWD)) {
                System.out.println("登录成功，尽情享受相亲时光吧..");
            }else{
                System.out.println("密码不对，请重新输入，否则将错过一份美好姻缘");
            }
        }

        preparedStatement.close();
        connection.close();
    }
}
